package com.xuecheng.content.service;

import com.xuecheng.api.content.model.dto.TeachplanDTO;
import com.xuecheng.content.entity.Teachplan;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 课程计划 服务类
 * </p>
 *
 * @author itcast
 * @since 2021-12-11
 */
public interface TeachplanService extends IService<Teachplan> {

    /**
     * 课程计划查询 树结构
     * @param courseId 课程基础信息id
     * @param companyId 机构id
     * @return TeachplanDTO
     */
    TeachplanDTO selectTeachPlanTreeNodes(Long courseId, Long companyId);

    /**
     * 课程计划创建和修改
     * @param teachplanDTO 传入的参数
     * @param companyId 机构id
     * @return TeachplanDTO
     */
    TeachplanDTO createOrUpdateTeachPlan(TeachplanDTO teachplanDTO, Long companyId);

    /**
     * 课程计划删除操作
     * @param teachplanId 根据id删除 teachplanId
     * @param companyId 机构id
     */
    void deleteTeachPlan(Long teachplanId, Long companyId);
}
